
using System;
using System.ComponentModel.DataAnnotations.Schema;
using Abp.Application.Services.Dto;
using Abp.Domain.Entities;
using SOEI.Solution.Customized;

namespace SOEI.Solution.DomainEntities.PurQualificationAudit.Dtos
{	
	/// <summary>
	/// PurQualificationApply的列表DTO
	/// <see cref=""/>
	/// </summary>
    public class PurQualificationApplyListDto  : EntityDto<string>
    {
		/// <summary>
        /// Id 
        /// </summary>
        public string Id { get; set; }

		/// <summary>
		/// 字段GFRLXDM
		/// </summary>
		public string GFRLXDM { get; set; }

		/// <summary>
		/// 字段GFRXM
		/// </summary>
		public string GFRXM { get; set; }

		/// <summary>
		/// 字段ZJMC
		/// </summary>
		public string ZJMC { get; set; }

		/// <summary>
		/// 字段ZJHM
		/// </summary>
		public string ZJHM { get; set; }

		/// <summary>
		/// 字段LXDH
		/// </summary>
		public string LXDH { get; set; }

		/// <summary>
		/// 字段NGZFDZ
		/// </summary>
		public string NGZFDZ { get; set; }

		/// <summary>
		/// 字段HJSZD
		/// </summary>
		public string HJSZD { get; set; }

		/// <summary>
		/// 字段JTYYZFQK
		/// </summary>
		public string JTYYZFQK { get; set; }

		/// <summary>
		/// 字段LRSJ
		/// </summary>
		public DateTime? LRSJ { get; set; }

		/// <summary>
		/// 字段SXSJ
		/// </summary>
		public DateTime? SXSJ { get; set; }

        ///// <summary>
        ///// 字段SQZTDM
        ///// </summary>
        //public string SQZTDM { get; set; }

        /// <summary>
        /// 申请状态代码
        /// </summary>
        public ApplyStatus SQZTDM { get; set; }

		/// <summary>
		/// 字段FWBH
		/// </summary>
		public string FWBH { get; set; }

		/// <summary>
		/// 字段HTDJH
		/// </summary>
		public string HTDJH { get; set; }

		/// <summary>
		/// 字段SM
		/// </summary>
		public string SM { get; set; }

		/// <summary>
		/// 字段YWLXDM
		/// </summary>
		public string YWLXDM { get; set; }

		/// <summary>
		/// 字段DWBH
		/// </summary>
		public string DWBH { get; set; }

		/// <summary>
		/// 字段LRRBH
		/// </summary>
		public string LRRBH { get; set; }

		/// <summary>
		/// 字段LRRXM
		/// </summary>
		public string LRRXM { get; set; }

		/// <summary>
		/// 字段QYDM
		/// </summary>
		public string QYDM { get; set; }

		/// <summary>
		/// 字段XGLX
		/// </summary>
		public string XGLX { get; set; }

		/// <summary>
		/// 字段ZLSCZTDM
		/// </summary>
		public string ZLSCZTDM { get; set; }

		/// <summary>
		/// 字段ISBS
		/// </summary>
		public string ISBS { get; set; }

		/// <summary>
		/// 字段SCRBH
		/// </summary>
		public string SCRBH { get; set; }

		/// <summary>
		/// 字段SCRXM
		/// </summary>
		public string SCRXM { get; set; }

		/// <summary>
		/// 字段SCSJ
		/// </summary>
		public DateTime? SCSJ { get; set; }

		/// <summary>
		/// 字段ZLSCFSDM
		/// </summary>
		public string ZLSCFSDM { get; set; }

		/// <summary>
		/// 字段XGRBH
		/// </summary>
		public string XGRBH { get; set; }

		/// <summary>
		/// 字段XGRMC
		/// </summary>
		public string XGRMC { get; set; }

		/// <summary>
		/// 字段XGSJ
		/// </summary>
		public DateTime? XGSJ { get; set; }

		/// <summary>
		/// 字段SFDC
		/// </summary>
		public string SFDC { get; set; }

		/// <summary>
		/// 字段WTHTJGBH
		/// </summary>
		public string WTHTJGBH { get; set; }

		/// <summary>
		/// 字段TJSJ
		/// </summary>
		public DateTime? TJSJ { get; set; }

		/* 这里创建自己的代码 */

		/// <summary>
		/// 数据来源：XMS-->新模式用来区分老系统
		/// </summary>
		public string SJLY { get; set; }

		/// <summary>
		/// 过期时间(剩余时间)
		/// </summary>
		public string GQSJ { get; set; }

		public string ISWQ
		{
			get
			{
				if (string.IsNullOrWhiteSpace(this.HTDJH))
				{
					return "否";
				}
				else
				{
					return "是";
				}
			}
		}

		/// <summary>
		/// 申请状态名称
		/// </summary>
		public string SQZTMC
		{
			get
			{
				switch (this.SQZTDM)
				{
					case ApplyStatus.UnSubmitted:
						return "未提交";
					case ApplyStatus.Auditing:
						return "审查中";
					case ApplyStatus.AuditPassed:
						return "审查通过";
					case ApplyStatus.AuditUnPassed:
						return "审查未通过";
					case ApplyStatus.Returned:
						return "已退回";
					case ApplyStatus.FirstAuditing:
						return "初审审查中";
					case ApplyStatus.Empty:
						return "";
					default:
						return "";
				}

			}
		}
	}
}